/*
    jquery.fbjlike.js - http://socialmediaautomat.com/jquery-fbjlike-js.php
    based on: jQuery OneFBLike v1.1 - http://onerutter.com/open-source/jquery-facebook-like-plugin.html
    Copyright (c) 2010 Jake Rutter modified 2011 by Stephan Helbig
    This plugin available for use in all personal or commercial projects under both MIT and GPL licenses.
*/

(function($){  
$.fn.fbjlike = function(options) {  
        
  //Set the default values, use comma to separate the settings 
  var defaults = {  
    appID: '224229974253687',
    siteTitle: '',
    siteName: '',
    siteImage: '',
    buttonWidth: 450,
    buttonHeight: 60,
    showfaces: true,
    font: 'lucida grande',
    layout: 'normal',
    action: 'like',
    colorscheme: 'light',
    lang: 'en_US',
    hideafterlike:false,
    onlike: function(){return true;},
    onunlike: function(){return true;}
}  
            
var options =  $.extend(defaults, options);  
                        
  return this.each(function() {  
  var o = options;  
  var obj = $(this);
  var dynUrl = document.location;
  
  // Add Meta Tags for additional data - options
  if(o.siteTitle!='')$('head').append('<meta property="og:title" content="'+o.siteTitle+'"/>');
  if(o.siteName!='')$('head').append('<meta property="og:site_name" content="'+o.siteName+'"/>');
  if(o.siteImage!='')$('head').append('<meta property="og:image" content="'+o.siteImage+'"/>');
  
  // Add #fb-root div - mandatory - do not remove
  $('body').append('<div id="fb-root"></div>');
  $('#fb-like iframe').css('height','35px !important');
  
  (function() {
    var e = document.createElement('script');
    e.async = true;
    e.src = document.location.protocol + '//connect.facebook.net/'+o.lang+'/all.js';
    $('#fb-root').append(e);
  }());
    
  // setup FB Developers App Link - do not touch
  window.fbAsyncInit = function() {
    FB.init({appId: o.appID, status: true, cookie: true, xfbml: true});
    FB.Event.subscribe('edge.create', function(response) {
          if(o.hideafterlike)$(obj).hide();
          o.onlike.call(response);
        });
    FB.Event.subscribe('edge.remove', function(response) {
          o.onunlike.call(response);
        });
  };                      
                              
  // Apply the like button to an element on the page and include all available options
  // If no options are passed in from the page, the defaults will be applied            
  $(obj).html('<fb:like href="'+dynUrl+'" width="'+o.buttonWidth+'" height="'+o.buttonHeight+'" show_faces="'+o.showfaces+'" font="'+o.font+'" layout="'+o.layout+'" action="'+o.action+'" colorscheme="'+o.colorscheme+'"/>');

  });  
}  
})(jQuery);
